//
//  CALayer+ZXSublayer.h
//  ZXAnimationUtil
//
//  Created by 朱新明 on 2023/7/17.
//

#import <QuartzCore/QuartzCore.h>

NS_ASSUME_NONNULL_BEGIN

@interface CALayer (ZXSublayer)


/// 渐变图层
/// @param frame frame矩形
/// @param colors 颜色数组，CGColorRef对象
/// @param locations 定义每个渐变色停止的位置。数值必须是递增的。如果给定一个nil数组，则假定停止在[0,1]范围内均匀分布。数组元素数量要和colors数组元素数量一样。
/// @param startPoint 绘制起点，根据图层坐标系，范围[0,1]，左上角是(0,0),右下角是(1,1) 起点和终点决定了绘制渐变的范围矩形和绘制方向。根据起点指向终点的方向来绘制。起点到终点之间，如果x轴或y轴没有间距矩形，则width/height默认全部。
/// @param endPoint 绘制终点
+ (CAGradientLayer *)gradientLayerWithFrame:(CGRect)frame
                                     colors:(NSArray *)colors
                                  locations:(nullable NSArray <NSNumber *> *)locations
                                 startPoint:(CGPoint)startPoint
                                   endPoint:(CGPoint)endPoint;




/// 创建复制图层。这是一个容器图层，放入其内的子图层会按照一定的规则进行复制。
/// @param sublayer 源对象。
+ (CAReplicatorLayer *)replicatorLayerWithSublayer:(CALayer *)sublayer;


@end

NS_ASSUME_NONNULL_END
